/**
 * Project Name:wwe
 * File Name:CommonDao.java
 * Package Name:pers.billson.wwe.common
 * Date:2017年4月4日下午7:42:17
 * Copyright ©2017, billson0618@163.com All Rights Reserved.
 *
*/

package pers.billson.wwe.common;

import java.util.List;

/**
 * Discription: 基础Dao接口类 <br/>
 *
 * @author Billson
 * @date 2017年4月4日 下午7:42:17
 */
public interface BaseDao<T> {

	/**
	 * 根据主键查询单条数据 <br/>
	 *
	 * @param id
	 * @return
	 * @author Billson
	 * @date 2017年4月4日 下午7:43:43
	 */
	T queryById(long id);

	/**
	 * 根据主键查询单条数据 <br/>
	 *
	 * @param id
	 * @return
	 * @author Billson
	 * @date 2017年4月4日 下午7:43:43
	 */
	T queryById(String id);

	/**
	 * 
	 * 查询所有数据 <br/>
	 *
	 * @return
	 * @author Billson
	 * @date 2017年4月4日 下午11:06:21
	 */
	List<T> queryAll();

	/**
	 * 插入数据 <br/>
	 *
	 * @param t
	 * @return
	 * @author Billson
	 * @date 2017年4月4日 下午7:48:59
	 */
	int insert(T t);

	/**
	 * 根据主键删除数据 <br/>
	 *
	 * @param id
	 * @return
	 * @author Billson
	 * @date 2017年4月4日 下午7:50:30
	 */
	int deleteById(long id);

	/**
	 * 根据主键删除数据 <br/>
	 *
	 * @param id
	 * @return
	 * @author Billson
	 * @date 2017年4月4日 下午7:50:30
	 */
	int deleteById(String id);

	/**
	 * 
	 * 更新数据 <br/>
	 *
	 * @param t
	 * @return
	 * @author Billson
	 * @date 2017年4月4日 下午7:54:19
	 */
	int update(T t);
}
